package io.itit.ecp.admin.provide.action.resp;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.itit.grass.common.provide.action.resp.BaseResp;
import io.itit.grass.dict.starter.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import java.util.Date;
import java.util.List;

/**
 * <p>
 *
 * @Author：Roy
 * @Description：设备管理-预警响应结果
 * @Date：Create by 2023-12-04 15:28:53
 */
@Data
@ToString
@ApiModel("设备管理-预警响应结果")
public class DeviceWarningResp extends BaseResp implements ISceneInfoResp {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("预警名称")
    private String warningName;

    @ApiModelProperty("项目Id")
    private String sceneProjectId;

    @ApiModelProperty("项目名称")
    private String projectName;

    @ApiModelProperty("楼栋Id")
    private String sceneEdificeId;

    @ApiModelProperty("楼层Id")
    private String sceneFloorId;

    @ApiModelProperty("空间Id")
    private String sceneRoomId;

    @ApiModelProperty("场景名称")
    private String sceneInfoName;

    @ApiModelProperty("预警等级")
    @Dict(dictCode = "ecp-admin.earlyWarningRecord.thresholdLevel")
    private String thresholdLevel;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("开始时间")
    private Date startTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("结束时间")
    private Date endTime;

    @ApiModelProperty("机构Id")
    private String deptId;

    @ApiModelProperty("预警阀值列表")
    private List<DeviceWarningThresholdResp> warningThresholds;

    @ApiModelProperty("推送目标列表")
    private List<DeviceWarningUserResp> warningUsers;

}
